import json


def remove_last_key(data):
    for item in data:
        if item["keystrokes"]:
            item["keystrokes"].pop()
    return data


try:
    # 读取 database.json 文件
    with open('database.json', 'r', encoding='utf-8') as file:
        data = json.load(file)

    # 删除每个 subject 下 keystrokes 列表的最后一个键
    new_data = remove_last_key(data)

    # 将处理后的数据保存到新的 JSON 文件
    with open('main_database.json', 'w', encoding='utf-8') as new_file:
        json.dump(new_data, new_file, indent=2)

    print("处理完成，新文件已保存为 main_database.json")

except FileNotFoundError:
    print("错误：未找到 database.json 文件。")
except json.JSONDecodeError:
    print("错误：无法解析 database.json 文件的内容。")
except Exception as e:
    print(f"发生未知错误：{e}")
    